package com.warm.pump.module.sys.service;

import com.warm.pump.module.sys.bean.SysMenuDto;
import com.warm.pump.module.sys.bean.po.gen.SysMenu;
import com.warm.pump.frame.gen.bean.PageBean;

import java.util.List;
import java.util.Map;

/**
 * sys_menu
 *
 */
public interface ISysMenuService {

	/**
	 * 根据父菜单，查询子菜单
	 * @param parentId 父菜单ID
	 * @param menuIdList 用户菜单ID
	 */
	List<SysMenu> queryListParentId(Long parentId, List<Long> menuIdList);
	/**
	 * 根据父菜单，查询子菜单
	 *
	 * @param parentId 父菜单ID
	 */
	List<SysMenu> queryListParentId(Long parentId);
	/**
	 * 获取不包含按钮的菜单列表
	 */
	List<SysMenu> queryNotButtonList();

	/**
	 * 获取用户菜单列表
	 */
	List<SysMenuDto> getUserMenuList(Long userId);

	/**
	 * 查询菜单
	 */
	SysMenu queryObject(Long menuId);

	/**
	 * 查询菜单列表
	 */
	List<SysMenu> queryList(Map<String, Object> map);

	/**
	 * 查询总数
	 */
	int queryTotal(Map<String, Object> map);

	/**
	 * 保存菜单
	 */
	void save(SysMenu menu);

	/**
	 * 修改
	 */
	void update(SysMenu menu);

	/**
	 * 删除
	 */
	void deleteBatch(Long[] menuIds);
}
